package com.gpframework.module.process.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import com.gpframework.common.annotation.Excel;
import java.util.Date;
import java.math.BigDecimal;

/**
 * @ClassName GpProcessOverflowRateVo
 * @Author gpframework
 * @Date 2023-12-20
 * @Version 1.0.0
 * @Description 溢码率Vo对象
 */
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
public class GpProcessOverflowRateVo {
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @ApiModelProperty("${column.columnComment}")
    private Long id;

    /** 品牌id */
    @Excel(name = "品牌id")
    @ApiModelProperty("品牌id")
    private String brandId;

    /** 品牌名称 */
    @Excel(name = "品牌名称")
    @ApiModelProperty("品牌名称")
    private String brandName;

    /** 缺货报库存申请表id */
    @Excel(name = "缺货报库存申请表id")
    @ApiModelProperty("缺货报库存申请表id")
    private Long productionApplicationId;

    /** 排单表id */
    @Excel(name = "排单表id")
    @ApiModelProperty("排单表id")
    private Long processSchedulingId;

    /** 到货单id */
    @Excel(name = "到货单id")
    @ApiModelProperty("到货单id")
    private Long processDeliveryNoteId;

    /** 订单号 */
    @Excel(name = "订单号")
    @ApiModelProperty("订单号")
    private String sn;

    /** 加工商ID */
    @Excel(name = "加工商ID")
    @ApiModelProperty("加工商ID")
    private Long processorId;

    /** 加工商 */
    @Excel(name = "加工商")
    @ApiModelProperty("加工商")
    private String processor;

    /** 底布品名 */
    @Excel(name = "底布品名")
    @ApiModelProperty("底布品名")
    private String backerName;

    /** 底布颜色 */
    @Excel(name = "底布颜色")
    @ApiModelProperty("底布颜色")
    private String backerColor;

    /** 批号 */
    @Excel(name = "批号")
    @ApiModelProperty("批号")
    private String batchNo;

    /** 成品品名 */
    @Excel(name = "成品品名")
    @ApiModelProperty("成品品名")
    private String productName;

    /** 成品颜色 */
    @Excel(name = "成品颜色")
    @ApiModelProperty("成品颜色")
    private String productColor;

    /** 每次出库底布公斤数/码数 */
    @Excel(name = "每次出库底布公斤数/码数")
    @ApiModelProperty("每次出库底布公斤数/码数")
    private BigDecimal outboundBacker;

    /** 底布每公斤按照6码换算 */
    @Excel(name = "底布每公斤按照6码换算")
    @ApiModelProperty("底布每公斤按照6码换算")
    private BigDecimal convertBacker;

    /** 出码率换算 （足码数）/底布出去的总足码数 */
    @Excel(name = "出码率换算 ", readConverterExp = "足=码数")
    @ApiModelProperty("出码率换算 （足码数）/底布出去的总足码数")
    private BigDecimal outputRate;

    /** 成品回货 （足码数） */
    @Excel(name = "成品回货 ", readConverterExp = "足=码数")
    @ApiModelProperty("成品回货 （足码数）")
    private BigDecimal productReturn;

    /** 加工后的成品总数 -底布换算的总数 溢码数（差异数） */
    @Excel(name = "溢码数", readConverterExp = "差=异数")
    @ApiModelProperty("溢码数（差异数）")
    private BigDecimal differenceNum;

    /** 差异率 */
    @Excel(name = "差异率")
    @ApiModelProperty("差异率")
    private BigDecimal differenceRate;

    /** QC验货 */
    @Excel(name = "QC验货")
    @ApiModelProperty("QC验货")
    private String qcInspection;

    /** 跟单员id */
    @Excel(name = "跟单员id")
    @ApiModelProperty("跟单员id")
    private Long documentaryId;

    /** 跟单员 */
    @Excel(name = "跟单员")
    @ApiModelProperty("跟单员")
    private String documentaryMan;

    /** 操作人id */
    @Excel(name = "操作人id")
    @ApiModelProperty("操作人id")
    private Long operatorId;

    /** 操作人 */
    @Excel(name = "操作人")
    @ApiModelProperty("操作人")
    private String operatorName;

    /** 操作时间 */
    @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("操作时间")
    private Date operatorTime;

    /** 排序 */
    @Excel(name = "排序")
    @ApiModelProperty("排序")
    private Integer sort;

    /** 备注 */
    @Excel(name = "备注")
    @ApiModelProperty("备注")
    private String remarks;

    /** 创建者 */
    @ApiModelProperty("创建者")
    private String createBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("创建时间")
    private Date createTime;

    /** 更新者 */
    @ApiModelProperty("更新者")
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("更新时间")
    private Date updateTime;

    /** 操作人编号 */
    @ApiModelProperty("操作人编号")
    private String operatorNum;
    /**审批人名称 */
    @ApiModelProperty("审批人名称")
    private String examinName;

    /** 列表是否修改字段（前端使用） */
    private Boolean clickEdit = false;


}
